// Created by WXX on 2021/9/25 13:57
#include "MyTree.h"

/**
 * 执行用时：32 ms, 在所有 C++ 提交中击败了19.29%的用户
 * 内存消耗：28 MB, 在所有 C++ 提交中击败了71.10%的用户
 */
class Solution {
public:
    bool isSubtree(TreeNode* A, TreeNode* B) {
        if (!A || !B) return false;
        if (isPart(A, B)) return true;
        return isSubtree(A->left, B) || isSubtree(A->right, B);
    }

    bool isPart(TreeNode* A, TreeNode* B) {
        if (!A && !B) return true;
        if (!A || !B) return false;
        if (A->val != B->val) return false;
        return isPart(A->left, B->left) && isPart(A->right, B->right);
    }
};

int main() {


    return 0;
}
